Partial Dependence Plots (PDP) এবং Individual Conditional Expectation (ICE) হল দুটি জনপ্রিয় ভিজ্যুয়ালাইজেশন টুল যা মেশিন লার্নিং মডেলগুলির পারফরম্যান্স এবং ফিচারগুলির মধ্যে সম্পর্ক বোঝার জন্য ব্যবহৃত হয়। তারা মডেলের আউটপুটের সাথে ইনপুট ফিচারের সম্পর্ক বিশ্লেষণ করতে সাহায্য করে এবং একটি মডেল কীভাবে বৈশিষ্ট্যগুলোকে প্রতিক্রিয়া জানায় তা দেখানোর জন্য গুরুত্বপূর্ণ।
১. Partial Dependence Plots (PDP)
Partial Dependence Plot (PDP) একটি গ্রাফিকাল টুল যা নির্দিষ্ট ফিচারের একটি নির্দিষ্ট মানের বিরুদ্ধে আউটপুট পূর্বাভাস কেমন পরিবর্তিত হয় তা প্রদর্শন করে। এটি মডেলটির কিছু পূর্বাভাসের পরিমাণের উপর ফিচারগুলির পার্শ্বপ্রতিক্রিয়া (interaction) বুঝতে সাহায্য করে। PDP একটি একক বৈশিষ্ট্য বা দুটি বৈশিষ্ট্যের (যদি 2D PDP হয়) প্রভাব দেখতে দেয়, যেখানে অন্য সমস্ত ফিচারের মান গড় বা স্থির রাখা হয়।
PDP এর উদ্দেশ্য:
- মডেলের সাধারণ আচরণ বুঝতে সাহায্য করা।
- একটি ফিচারের মূল্য বৃদ্ধির সাথে মডেলের আউটপুট কীভাবে পরিবর্তিত হয় তা দেখা।
- মডেল এবং ফিচারের মধ্যে সম্পর্কের সহজতর ব্যাখ্যা প্রদান।
PDP এর ব্যবহার:
PDP সাধারণত যখন মডেলটি অনেক বেশি জটিল হয় এবং বিভিন্ন বৈশিষ্ট্যের মধ্যে সম্পর্ক বোঝার প্রয়োজন হয় তখন ব্যবহার করা হয়। এটি বিভিন্ন ফিচারের পারস্পরিক প্রভাব বা একক ফিচারের প্রভাব বিশ্লেষণ করার জন্য ব্যবহৃত হয়।
Python এ PDP উদাহরণ (using sklearn and matplotlib):
import matplotlib.pyplot as plt
from sklearn.inspection import plot_partial_dependence
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
# ডেটাসেট লোড করা
data = load_iris()
X = data.data
y = data.target
# মডেল প্রশিক্ষণ
model = RandomForestClassifier()
model.fit(X, y)
# PDP প্লট তৈরি করা
plot_partial_dependence(model, X, features=[0, 1], feature_names=data.feature_names)
plt.show()
এটি দুটি বৈশিষ্ট্যের (ফিচার 0 এবং ফিচার 1) জন্য Partial Dependence Plot তৈরি করবে এবং তাদের আউটপুট সম্পর্ক প্রদর্শন করবে।
২. Individual Conditional Expectation (ICE)
Individual Conditional Expectation (ICE) হল একটি আরও বিস্তারিত ভিজ্যুয়ালাইজেশন টুল, যা PDP এর উন্নত রূপ হিসেবে কাজ করে। ICE প্রতিটি ইনস্ট্যান্সের জন্য আউটপুট পরিবর্তনের সম্পর্ক দেখায় যখন একটি একক ফিচারের মান পরিবর্তন করা হয়, এবং অন্যান্য ফিচারগুলি স্থির রাখা হয়। এটি PDP এর মতো কাজ করে, তবে এটি প্রতিটি ডেটা পয়েন্টের জন্য পৃথক রেখা তৈরি করে, যা মডেলের প্রতিটি অনুমানের জন্য গভীরতর তথ্য প্রদান করে।
ICE এর উদ্দেশ্য:
- প্রতিটি ডেটা পয়েন্টের জন্য ফিচারের প্রভাব বোঝা।
- ফিচারের প্রতি প্রতিক্রিয়া কিভাবে পৃথক ইনস্ট্যান্সের উপর প্রভাব ফেলে তা দেখতে।
- মডেলের মধ্যে সম্পর্ক বা কোনো বৈশিষ্ট্যের প্রতি প্রতিক্রিয়া বৈশিষ্ট্যগুলির মধ্যে পার্থক্য বুঝতে সাহায্য করা।
ICE এর ব্যবহার:
ICE প্লটগুলি সাধারণত তখন ব্যবহার করা হয় যখন আপনি ফিচারের প্রতিক্রিয়া এবং মডেলের বৈশিষ্ট্যগুলির প্রতি প্রতিক্রিয়া সম্পর্ক আরও বিস্তারিতভাবে বিশ্লেষণ করতে চান, এবং যদি আপনার মডেলটি খুব বেশি জটিল বা স্বাভাবিক না হয়।
Python এ ICE উদাহরণ (using sklearn and matplotlib):
from sklearn.inspection import plot_partial_dependence
import numpy as np
# ICE প্লট তৈরি করা
fig, ax = plt.subplots(figsize=(10, 6))
plot_partial_dependence(model, X, features=[0], feature_names=data.feature_names, kind='both', ax=ax)
plt.show()
এটি একটি ICE প্লট তৈরি করবে, যেখানে প্রতি ডেটা পয়েন্টের জন্য একটি পৃথক রেখা দেখানো হবে।
৩. PDP vs ICE:
| বৈশিষ্ট্য | Partial Dependence Plot (PDP) | Individual Conditional Expectation (ICE) |
|---|---|---|
| ফিচারের উপর প্রভাব | ফিচারের আউটপুট উপর গড় প্রভাব দেখায়। | প্রতিটি ইনস্ট্যান্সের জন্য পৃথক আউটপুট দেখায়। |
| ব্যবহার | সাধারণ ফিচার সম্পর্ক বুঝতে। | প্রতিটি ইনস্ট্যান্সের আচরণ বুঝতে। |
| তথ্যের গভীরতা | গড় বা সারাংশ প্রদর্শন। | প্রতিটি ইনস্ট্যান্সের জন্য বিস্তারিত তথ্য। |
| নতুন রকম সম্পর্ক | দুই বা একাধিক বৈশিষ্ট্যের পারস্পরিক সম্পর্ক। | একাধিক ইনস্ট্যান্সের জন্য সম্পর্ক দেখানো। |
সারাংশ
- PDP হল একটি সিম্পল টুল যা একটি ফিচারের আউটপুটের গড় প্রভাব দেখতে সাহায্য করে, যেখানে অন্য সব ফিচার স্থির রাখা হয়।
- ICE হল PDP এর আরও বিস্তারিত সংস্করণ যা প্রতিটি ইনস্ট্যান্সের জন্য আলাদা রেখা প্রদান করে, ফলে আপনি মডেলটির আচরণ এবং ফিচারের প্রতি প্রতিক্রিয়া বোঝার জন্য আরও বিস্তারিত তথ্য পান।
PDP এবং ICE উভয়ই মডেল ইন্টারপ্রেটেবিলিটি উন্নত করতে ব্যবহৃত হয়, তবে ICE গভীরতর এবং স্পেসিফিক তথ্য সরবরাহ করে।
Read more